《上海市卫生健康“信息技术应用创新”白皮书》将C#/.NET认定为“A组件”——需要替换
下图来自「上海卫生观察」微信公众号发布的《上海市卫生健康“信息技术应用创新”白皮书》。
据称《白皮书》介绍了“医疗信创核心应用适配方法、公立医院信息系统及全民健康信息平台信创设计思路”。
可以看到,C#/.NET 在“ARM架构信创技术全景图”中被认定为 A 组件,意味着“需要替换”。
对此,国内知名 .NET 技术专家、微软最有价值专家 MVP 张善友发文指出了错误,并呼吁修改这份白皮书对于 C#/.NET 的错误认知。
呼吁改正《上海市卫生健康信息技术应用创新白皮书》 C# 被认定为A 组件 的 错误认知
以下内容摘录自原文:
C#/.NET 平台需要被区分为两个阶段:.NET Core 1.0 对应的 C# 版本是 C# 7.0 为界线。
我们来看下C# 的发展历程:
1、C# 1.0(2002年1月):作为与 Visual Studio .NET 2002 一起发布的版本,C# 1.0 在设计上受到了 Java 的影响。它的主要功能包括类、结构、接口、事件、属性、委托、运算符和表达式、语句以及特性,运行平台.NET Framework 1.0/Mono 1.0。
2、C# 2.0(2005年11月):此版本引入了泛型、匿名方法和迭代器等特性,大幅提高了语言的灵活性和性能,运行平台.NET Framework 2.0/Mono 2.0。
3、C# 3.0(2007年11月):这个版本伴随着 .NET 3.5 的发布,引入了LINQ、匿名类型、隐式类型的局部变量、对象和集合初始化器、扩展方法、查询表达式、Lambda 表达式等特性, 运行平台.NET Framework 3.5/Mono 2.0。
4、C# 4.0(2010年4月):增加了动态绑定、命名和可选参数、泛型协变和逆变、嵌入的互操作类型等特性, 运行平台.NET Framework 4.0/Mono 2.0。
5、C# 5.0(2012年8月):此版本引入了异步编程、调用方信息、协变返回类型和成员等特性, 运行平台.NET Framework 4.5/Mono 3.0。
6、C# 6.0(2015年7月):引入了自动属性初始化器、表达式体成员、字符串内插、空合并运算符、异常过滤器等特性, 运行平台.NET Framework 4.8/Mono 4.4,在2014年成立了.NET基金会。
7、C# 7.0(2017年3月):增加了 out 变量、元组、模式匹配、局部函数、ref 局部变量和返回、扩展异步返回类型等特性, 运行平台.NET Framework 4.8/Mono 6.12/.NET Core 1.0。
8、C# 7.1 和 7.2:这两个小版本分别在 2017 年 8 月和 2017 年 11 月发布,引入了默认表达式、异步 Main 方法、推断元组名称、数字分隔符、ref 结构、in 参数等特性, 运行平台.NET Framework 4.8/Mono 6.12/.NET Core 2.0。
9、C# 8.0(2019年9月):引入了可空引用类型、异步流、范围和索引、默认接口方法、只读成员、解构委托等特性, 运行平台.NET Framework 4.8/Mono 6.12/.NET Core 3.1。
10、C# 9.0(2020年11月):随 .NET 5 一起发布,引入了记录、仅限 Init 的资源库、顶级语句、模式匹配增强、本机大小的整数、函数指针等特性 , 运行平台Mono 6.12/.NET 5.0。
11、C# 10(2021年11月):引入了记录结构、结构类型的改进、内插字符串处理程序、global using 指令、文件范围的命名空间声明、扩展属性模式、对 Lambda 表达式的改进、可使用 const 内插字符串、记录类型可密封 ToString()、改进型明确赋值、在同一析构中可同时进行赋值和声明、可在方法上使用 AsyncMethodBuilder 属性、CallerArgumentExpression 属性、增强的 #line pragma 等特性, 运行平台Mono 6.12/.NET 6.0 。
12、C# 11(2022年11月):增加了原始字符串字面量、泛型数学支持、泛型属性、UTF-8 字符串字面量、字符串内插表达式中的换行符、列表模式、文件本地类型、必需的成员、自动默认结构、常量 string 上的模式匹配 Span、扩展的 nameof 范围、数值 IntPtr、ref 字段和 scoped ref、改进了方法组向委托的转换、警告波 等特性, 运行平台.NET 7.0 。
13、C# 12(2023年11月):引入了主构造函数、集合表达式、内联数组、Lambda 表达式中的可选参数、ref readonly 参数、创建任何类型的别名、试验性属性、拦截器等特性, 运行平台.NET 8.0.
https://www.microsoft.com/en-us/exporting/exporting-information.aspx
明确了.NET的所有版本(除了老的.NET Framework)不遵守美国出口管理条例EAR:https://www.bis.doc.gov/ ,因此我们完全不需要担心存在“断供”问题。
http://www.caict.ac.cn/kxyj/qwfb/bps/202209/P020220916644891972234.pdf。
http://www.loongnix.cn/zh/api/dotnet/。
END
热门文章
- 开发者评价“仓颉”编程语言:像Rust、比MoonBit好
- “鸭子数据库”正式发布1.0稳定版:C++引擎代码超30万行
- 开发者直接复制ChatGPT生成的代码,导致公司损失10000美元